home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MacWorld 1999 November
/
Macworld (1999-11).dmg
/
Shareware World
/
Utilities
/
User Interface
/
Golive [Font]
/
LaunchURL
/
Source
/
IC APIs
/
ICKeys.h
< prev
next >
Wrap
Text File
|
1997-09-14
|
10KB
|
221 lines
/* •••Start Header••• */
/* File: ICKeys.h
* Generated by: 1.0d5
* For: IC 1.4
* On: Sunday, 14 September 1997, 21:17:55
*
* This file is part of the Internet Configuration system and
* is placed in the public domain for the benefit of all.
*/
/* •••End Header••• */
/*
IMPORTANT NOTES ABOUT THE C CONVERSION
--------------------------------------
o Pascal "var" parameters are converted from "var x : y" to "y *x". This
means that when you see the parameter "y *x" you should be aware that
you *cannot pass in nil*. In future this restriction may be eased,
especially for the attr parameter to ICGetPref. Parameters where nil
is legal are declared using the explicit pointer type, ie "yPtr x".
o Strings are *Pascal* strings. This means that they must be word aligned.
MPW and Think C do this automatically. The last time I check, Metrowerks
C does not. If it still doesn't, then IMHO it's a bug in their compiler
and you should report it to them.
o The canonical Internet Config interface is defined in Pascal. These
headers have not been thoroughly tested. If there is a conflict between
these headers and the Pascal interfaces, the Pascal should take precedence.
*/
/* ///////////////////////////////////////////////////////////////////////////////// */
#ifndef __ICKEYS__
#define __ICKEYS__
#ifndef __TYPES__
#include <Types.h>
#endif
#ifndef __ALIASES__
#include <Aliases.h>
#endif
/* ///////////////////////////////////////////////////////////////////////////////// */
/* •••Start ICKeys.h••• */
#define kICRealName "\pRealName" /* PString -- real name of user */
#define kICEmail "\pEmail" /* PString -- user@host.domain, email address of user, ie return address */
#define kICMailAccount "\pMailAccount" /* PString -- user@host.domain, account from which to fetch mail */
#define kICMailPassword "\pMailPassword" /* PString -- scrambled, password for MailAccount */
#define kICNewsAuthUsername "\pNewsAuthUsername" /* PString -- user name for authorised news servers */
#define kICNewsAuthPassword "\pNewsAuthPassword" /* PString -- scrambled, password for NewsAuthUsername */
#define kICArchiePreferred "\pArchiePreferred" /* PString -- formatted, preferred Archie server */
#define kICArchieAll "\pArchieAll" /* STR# -- formatted, list of Archie servers */
#define kICUMichPreferred "\pUMichPreferred" /* PString -- formatted, preferred UMich server */
#define kICUMichAll "\pUMichAll" /* STR# -- formatted, list of UMich servers */
#define kICInfoMacPreferred "\pInfoMacPreferred" /* PString -- formatted, preferred Info-Mac server */
#define kICInfoMacAll "\pInfoMacAll" /* STR# -- formatted, list of Info-Mac servers */
#define kICPhHost "\pPhHost" /* PString -- host.domain, default Ph server */
#define kICWhoisHost "\pWhoisHost" /* PString -- host.domain, default whois server */
#define kICFingerHost "\pFingerHost" /* PString -- host.domain, default finger server */
#define kICFTPHost "\pFTPHost" /* PString -- host.domain, default FTP server */
#define kICTelnetHost "\pTelnetHost" /* PString -- host.domain, default Telnet address */
#define kICSMTPHost "\pSMTPHost" /* PString -- host.domain, SMTP server */
#define kICNNTPHost "\pNNTPHost" /* PString -- host.domain, NNTP server */
#define kICGopherHost "\pGopherHost" /* PString -- host.domain, default Gopher server */
#define kICLDAPServer "\pLDAPServer" /* PString -- host.domain */
#define kICLDAPSearchbase "\pLDAPSearchbase" /* PString -- string LDAP thing */
#define kICWWWHomePage "\pWWWHomePage" /* PString -- URL, users default WWW page */
#define kICWAISGateway "\pWAISGateway" /* PString -- no idea */
#define kICListFont "\pListFont" /* ICFontRecord -- font used for lists of items (eg news article lists) */
#define kICScreenFont "\pScreenFont" /* ICFontRecord -- font used for monospaced text (eg news articles) */
#define kICDocumentFont "\pDocumentFont" /* ICFontRecord -- font used for proportional text */
#define kICPrinterFont "\pPrinterFont" /* ICFontRecord -- font used to print ScreenFont */
#define kICDownloadFolder "\pDownloadFolder" /* ICFileSpec -- where to put newly downloaded files */
#define kICSignature "\pSignature" /* TEXT -- append to news and mail messages */
#define kICOrganization "\pOrganization" /* PString -- for X-Organization string */
#define kICPlan "\pPlan" /* TEXT -- default response for finger servers */
#define kICQuotingString "\pQuotingString" /* PString -- used to quote responses in news and mail */
#define kICMailHeaders "\pMailHeaders" /* TEXT -- extra headers for mail messages */
#define kICNewsHeaders "\pNewsHeaders" /* TEXT -- extra headers for news messages */
#define kICMapping "\pMapping" /* ICMapEntries -- file type mapping, see documentation */
#define kICCharacterSet "\pCharacterSet" /* ICCharTable -- Mac-to-Net and Net-to-Mac character translation */
#define kICHelper "\pHelper•" /* ICAppSpec -- helpers for URL schemes */
#define kICServices "\pServices" /* ICServices -- TCP and IP port-to-name mapping */
#define kICNewMailFlashIcon "\pNewMailFlashIcon" /* Boolean -- how to announce new mail */
#define kICNewMailDialog "\pNewMailDialog" /* Boolean */
#define kICNewMailPlaySound "\pNewMailPlaySound" /* Boolean */
#define kICNewMailSoundName "\pNewMailSoundName" /* PString */
#define kICWebBackgroundColour "\pWebBackgroundColour" /* RGBColor -- background colour for web pages */
#define kICNoProxyDomains "\pNoProxyDomains" /* STR# -- list of domains not to be proxied */
#define kICUseSocks "\pUseSocks" /* Boolean */
#define kICSocksHost "\pSocksHost" /* PString -- host.domain, remember that host.domain format allows ":port" and " port" */
#define kICUseHTTPProxy "\pUseHTTPProxy" /* Boolean */
#define kICHTTPProxyHost "\pHTTPProxyHost" /* PString -- host.domain */
#define kICUseGopherProxy "\pUseGopherProxy" /* Boolean */
#define kICGopherProxy "\pGopherProxy" /* PString -- host.domain, see note in Prog Docs */
#define kICUseFTPProxy "\pUseFTPProxy" /* Boolean */
#define kICFTPProxyHost "\pFTPProxyHost" /* PString -- host.domain */
#define kICFTPProxyUser "\pFTPProxyUser" /* PString -- first level FTP proxy authorisation */
#define kICFTPProxyPassword "\pFTPProxyPassword" /* PString -- scrambled, password for FTPProxyUser */
#define kICFTPProxyAccount "\pFTPProxyAccount" /* PString -- second level FTP proxy authorisation */
#define kICUsePassiveFTP "\pUsePassiveFTP" /* Boolean -- use PASV command for FTP transfers */
#define kICSnailMailAddress "\pSnailMailAddress" /* TEXT -- preferred mailing address */
#define kICMacSearchHost "\pMacSearchHost" /* PString -- host for MacSearch queries */
#define kICWebSearchPagePrefs "\pWebSearchPagePrefs" /* PString -- URL, users default search page */
/* •••End ICKeys.h••• */
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=mac68k
#endif
struct ICFontRecord {
short size;
Style face;
char pad;
Str255 font;
};
typedef struct ICFontRecord ICFontRecord, *ICFontRecordPtr, **ICFontRecordHandle;
struct ICCharTable {
unsigned char net_to_mac[256];
unsigned char mac_to_net[256];
};
typedef struct ICCharTable ICCharTable, *ICCharTablePtr, **ICCharTableHandle;
struct ICAppSpec {
OSType fCreator;
Str63 name;
};
typedef struct ICAppSpec ICAppSpec, *ICAppSpecPtr, **ICAppSpecHandle;
struct ICFileInfo {
OSType fType;
OSType fCreator;
Str63 name;
};
typedef struct ICFileInfo ICFileInfo, *ICFileInfoPtr, **ICFileInfoHandle;
struct ICFileSpec {
Str31 vol_name;
long vol_creation_date;
FSSpec fss;
AliasRecord alias;
/* plus extra data, aliasSize 0 means no alias manager present when
ICFileSpecification was created */
};
typedef struct ICFileSpec ICFileSpec, *ICFileSpecPtr, **ICFileSpecHandle;
enum {
ICfile_spec_header_size = sizeof(ICFileSpec) - sizeof(AliasRecord)
};
struct ICMapEntry {
short total_length;
short fixed_length;
short version;
OSType file_type;
OSType file_creator;
OSType post_creator;
long flags;
/* variable part starts here */
Str255 extension;
Str255 creator_app_name;
Str255 post_app_name;
Str255 MIME_type;
Str255 entry_name;
};
typedef struct ICMapEntry ICMapEntry, *ICMapEntryPtr, **ICMapEntryHandle;
enum {
ICmap_binary_bit = 0, /* file should be transfered in binary as opposed to text mode */
ICmap_binary_mask = 0x00000001,
ICmap_resource_fork_bit = 1, /* the resource fork of the file is significant */
ICmap_resource_fork_mask = 0x00000002,
ICmap_data_fork_bit = 2, /* the data fork of the file is significant */
ICmap_data_fork_mask = 0x00000004,
ICmap_post_bit = 3, /* post process using post fields */
ICmap_post_mask = 0x00000008,
ICmap_not_incoming_bit = 4, /* ignore this mapping for incoming files */
ICmap_not_incoming_mask = 0x00000010,
ICmap_not_outgoing_bit = 5, /* ignore this mapping for outgoing files */
ICmap_not_outgoing_mask = 0x00000020,
ICmap_fixed_length = 22 /* number in fixed_length field */
};
struct ICServiceEntry {
Str255 name;
short port;
short flags;
};
typedef struct ICServiceEntry ICServiceEntry, *ICServiceEntryPtr, **ICServiceEntryHandle;
struct ICServices {
short count;
ICServiceEntry services[1];
};
typedef struct ICServices ICServices, *ICServicesPtr, **ICServicesHandle;
enum {
ICservices_tcp_bit = 0,
ICservices_tcp_mask = 0x00000001,
ICservices_udp_bit = 1,
ICservices_udp_mask = 0x00000002
/* both bits can be set, which means the service is both TCP and UDP, eg daytime */
};
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=reset
#endif
#endif